クラウドWAFのImperva Incapsulaを試してみた(その1)
こんにちは、コカコーラ好きの梶です。
今日は、Webアプリケーションへの攻撃対策としてWAF(Web Application Firewall)を初期構築してみましたのでご紹介します。
Imperva Incapsulaって何?
IncapsulaはWeb Application Firewall(WAF)*1のクラウド型(SaaS)サービスで、以下の機能を提供しています。
- WAF、DDoSプロテクション、CDN、およびロード・バランサー& フェイル・オーバー
- デフォルトでDDoSプロテクションを提供
昨今、WAFはFirewallアプライアンス、負荷分散装置アプライアンス、セキュリティソフトウェアの機能など、色々なものから提供されています。
Incapsulaは、クラウドで提供するサービスのため、非常に導入しやすいのが特徴です。
Incapsulaは、SaaS版と日本代理店購入型があります。防御するWebサイト数、WAF必要帯域幅、DDoS防御必要帯域幅、サポート内容によって費用が変化します。
- SaaS版
- 英語のみで、Business/Business+などのエントリーモデルがあります。
- 費用についてはこのサイトが参考になります。
- 日本代理店購入版
- Enterpriseからのみの提供
構成
以下の構成図のように、EC2インスタンスでWebサーバを構築したものを導入前の環境とします。
導入前の構成
Incapsula導入後の構成
概要
上記構成を構築し、イベント検知テストするまでの手順について記載します。 最後にImpervaにて提供されているテストツールでの検知テストも実施してみました。
HTTPSのサイトの場合は、Incapsulaへの証明書の導入が必要となり、もう少し手順が必要なります。 HTTPSの手順と、各詳細設定については別のブログで紹介したいと思います。
Incapsula導入手順
Incapsulaアカウント登録
今回、試用版のアカウントをいただきましたので、以下のようなメールが届き、リンクをクリックするとアカウント登録Webページへ推移します。
ログインサイト
アカウント登録が完了すると以下のログイン画面になります。
Webサイト名登録
構成図のexample.jpを登録します。
Webサイト登録が完了すると、以下の画面が表示されます。
Continueを押すと、DNSの設定変更するよう指示があります。
AWS Route53の設定(DNSの設定変更)
example.jpがEC2インスタンスに向いていた設定を、Route53で、上記画面のIncapsulaのアドレスへ向くようにCNAMEで登録します。
設定変更が終了したら、IncapsulaのWeb画面で左側の登録したサイト名をクリックすると以下の画面へ移動し、各設定が確認できます。
イベント検知テスト
構築初期状態で、SQLインジェクションや、クロスサイトスクリプティングについて検知するように設定されています。(防御はされません)
Impervaで無償提供しているWeb Application Firewall (WAF) Testing Frameworkを自分のPCへインストールしてイベント検知させてみました。
構成図
Web Application Firewall (WAF) Testing Frameworkのダウンロード
*ダウンロードには情報登録が必要です。
*このツールについては自己責任でご利用ください。
http://www.imperva.jp/Resources/FreeEvaluationTools
Web Application Firewall (WAF) Testing Frameworkの実行
上記サイトでWindowsでダウンロードして、Zipファイルを解凍し、exeファイルを実行すると以下のような画面が表示されるため、Scanしたいサイトを入力して実行します。
*このツールについては自己責任でご利用ください。
実行後にresult.pdfファイルが生成されますので、詳細を確認してみると良いでしょう。
イベント通知メール
メール件名:「Threat Alert: <サイト名>」の以下のようなアラートメールが送付されてきます。
試用版のためか、遅れてアラートが届きました。試用版で実施の場合は、気長に待ちましょう。
*1 Web Application Firewall(WAF)とは以下の情報処理推進機構(IPA)の資料がわかりやすいのでそちらを一読すると良いでしょう。 http://www.ipa.go.jp/security/vuln/waf.html